package com.alibaba.citrus.cr.sales.plan.api.setting;


import com.alibaba.citrus.cr.sales.plan.dto.api.request.NotificationConfigQueryRequest;
import com.alibaba.citrus.cr.sales.plan.dto.api.request.PageQueryNotificationConfigRequest;
import com.alibaba.citrus.cr.sales.plan.sdo.NotificationConfigSDO;
import com.alibaba.cz.base.tool.page.PageResult;
import com.alibaba.lattice2.epoch.meshflow.model.annotation.MeshFlowService;
import com.alibaba.lattice2.epoch.sdk.model.Result;

import java.util.List;

@MeshFlowService(apps = {"bc_order"}, name = "NotificationConfigQueryService")
public interface NotificationConfigQueryService {

    /**
     * 分页查询通知设置
     *
     * @param pageQueryNotificationConfigRequest
     * @return
     */
    Result<PageResult<List<NotificationConfigSDO>>> pageQueryNotificationConfig(PageQueryNotificationConfigRequest pageQueryNotificationConfigRequest);

    /**
     * 根据id查询单个发送邮件
     *
     * @param notificationConfigQueryRequest
     * @return
     */
    Result<NotificationConfigSDO> queryNotificationConfigById(NotificationConfigQueryRequest notificationConfigQueryRequest);


    /**
     * 分页查询通知设置
     *
     * @param pageQueryNotificationConfigRequest
     * @return
     */
    Result<PageResult<List<NotificationConfigSDO>>> queryMailTemplate(PageQueryNotificationConfigRequest pageQueryNotificationConfigRequest);

}
